// Find max and min value in a random matrix
// By Ben 24/10/2018

#include <iostream>
#include <time.h>
using namespace std;

using std::cout;
using std::endl;

int main()
{
	int matrix[4][4];

	int r = 4;
	int c = 4;
	int i, j;
	int hi = 0;
	int lo = 0;
	int value = 0;

	srand(time(0));

	for (i = 0; i < r; i++){
		for (j = 0; j < c; j++){
			matrix[i][j] = rand() % 100;;
		}
	}

	//Print out matrix
	for (i = 0; i < r; i++){
		for (j = 0; j < c; j++){
			//Get value
			value = matrix[i][j];
			//Check if number is less then 10
			if (value < 10){
				//Append a space to the left side of the number
				std::cout << " " << value << "  ";
			}
			else{
				std::cout << value << "  ";
			}
		}
		std::cout << endl;
	}

	//Get max and min
	hi = matrix[0][0];
	lo = matrix[0][0];

	for (i = 0; i < r; i++){
		for (j = 0; j < c; j++){
			//Get max
			if (matrix[i][j] > hi){
				hi = matrix[i][j];
			}
			//Get min
			if (matrix[i][j] < lo){
				lo = matrix[i][j];
			}
		}
	}

	//Output results
	std::cout << endl;
	std::cout << "High : " << hi << endl;
	std::cout << "Low  : " << lo << endl;
	system("pause");
	return 0;
}
